package org.wu.acw.server.application.assembler;

import org.wu.acw.server.domain.model.acw.single.table.operation.log.AcwSingleTableOperationLog;
import org.wu.acw.server.application.command.acw.single.table.operation.log.AcwSingleTableOperationLogRemoveCommand;
import org.wu.acw.server.application.command.acw.single.table.operation.log.AcwSingleTableOperationLogStoryCommand;
import org.wu.acw.server.application.command.acw.single.table.operation.log.AcwSingleTableOperationLogUpdateCommand;
import org.wu.acw.server.application.command.acw.single.table.operation.log.AcwSingleTableOperationLogQueryListCommand;
import org.wu.acw.server.application.command.acw.single.table.operation.log.AcwSingleTableOperationLogQueryOneCommand;
import org.wu.acw.server.application.dto.AcwSingleTableOperationLogDTO;
import org.wu.framework.core.mapper.LazyStructMappers;
import org.wu.framework.core.mapper.LazyStructMapper;
/**
 * describe 单表操作日志 
 *
 * @author Jia wei Wu
 * @date 2024/04/29 09:55 上午
 * @see org.wu.framework.lazy.orm.core.persistence.reverse.lazy.ddd.DefaultDDDLazyAssembler 
 **/
@LazyStructMapper
public interface AcwSingleTableOperationLogDTOAssembler {


    /**
     * describe MapStruct 创建的代理对象
     *
     
     
     
     * @author Jia wei Wu
     * @date 2024/04/29 09:55 上午
     **/
    AcwSingleTableOperationLogDTOAssembler INSTANCE = LazyStructMappers.getMapper(AcwSingleTableOperationLogDTOAssembler.class);
    /**
     * describe 应用层存储入参转换成 领域对象
     *
     * @param acwSingleTableOperationLogStoryCommand 保存单表操作日志对象     
     * @return {@link AcwSingleTableOperationLog} 单表操作日志领域对象     
     
     * @author Jia wei Wu
     * @date 2024/04/29 09:55 上午
     **/
     AcwSingleTableOperationLog toAcwSingleTableOperationLog(AcwSingleTableOperationLogStoryCommand acwSingleTableOperationLogStoryCommand);
    /**
     * describe 应用层更新入参转换成 领域对象
     *
     * @param acwSingleTableOperationLogUpdateCommand 更新单表操作日志对象     
     * @return {@link AcwSingleTableOperationLog} 单表操作日志领域对象     
     
     * @author Jia wei Wu
     * @date 2024/04/29 09:55 上午
     **/
     AcwSingleTableOperationLog toAcwSingleTableOperationLog(AcwSingleTableOperationLogUpdateCommand acwSingleTableOperationLogUpdateCommand);
    /**
     * describe 应用层查询入参转换成 领域对象
     *
     * @param acwSingleTableOperationLogQueryOneCommand 查询单个单表操作日志对象参数     
     * @return {@link AcwSingleTableOperationLog} 单表操作日志领域对象     
     
     * @author Jia wei Wu
     * @date 2024/04/29 09:55 上午
     **/
     AcwSingleTableOperationLog toAcwSingleTableOperationLog(AcwSingleTableOperationLogQueryOneCommand acwSingleTableOperationLogQueryOneCommand);
    /**
     * describe 应用层查询入参转换成 领域对象
     *
     * @param acwSingleTableOperationLogQueryListCommand 查询集合单表操作日志对象参数     
     * @return {@link AcwSingleTableOperationLog} 单表操作日志领域对象     
     
     * @author Jia wei Wu
     * @date 2024/04/29 09:55 上午
     **/
     AcwSingleTableOperationLog toAcwSingleTableOperationLog(AcwSingleTableOperationLogQueryListCommand acwSingleTableOperationLogQueryListCommand);
    /**
     * describe 应用层删除入参转换成 领域对象
     *
     * @param acwSingleTableOperationLogRemoveCommand 删除单表操作日志对象参数     
     * @return {@link AcwSingleTableOperationLog} 单表操作日志领域对象     
     
     * @author Jia wei Wu
     * @date 2024/04/29 09:55 上午
     **/
     AcwSingleTableOperationLog toAcwSingleTableOperationLog(AcwSingleTableOperationLogRemoveCommand acwSingleTableOperationLogRemoveCommand);
    /**
     * describe 持久层领域对象转换成DTO对象
     *
     * @param acwSingleTableOperationLog 单表操作日志领域对象     
     * @return {@link AcwSingleTableOperationLogDTO} 单表操作日志DTO对象     
     
     * @author Jia wei Wu
     * @date 2024/04/29 09:55 上午
     **/
     AcwSingleTableOperationLogDTO fromAcwSingleTableOperationLog(AcwSingleTableOperationLog acwSingleTableOperationLog);
}